package com.tyk.bookstore.back.message.service;


import com.tyk.bookstore.back.message.model.enume.NoticeState;
import com.tyk.bookstore.back.message.model.query.InfoNoticeAddQuery;
import com.tyk.bookstore.back.message.model.query.InfoNoticePageQuery;
import com.tyk.bookstore.back.message.model.query.InfoNoticeUpdateQuery;
import com.tyk.bookstore.back.message.model.vo.InfoNoticePageVo;
import com.tyk.bookstore.back.message.model.vo.InfoNoticeVo;

/**
 * @author tyk
 * @description 消息通知管理
 */
public interface InfoNoticeService {

    /**
     * 获取信息公告详情
     */
    InfoNoticeVo getById(Long id);

    /**
     * 分页查询信息公告
     */
    InfoNoticePageVo getPage(InfoNoticePageQuery query);

    /**
     * 添加公告
     */
    void add(InfoNoticeAddQuery query);


    /**
     * 更新公告
     */
    void updateById(InfoNoticeUpdateQuery query);

    /**
     * 删除公告
     */
    void deleteById(Long id);

    /**
     * 修改公告状态
     */
    void changeState(Long id, NoticeState state);
}
